<!DOCTYPE HTML>
<html lang="zh-CN">


<head>
    <meta charset="utf-8">
    <meta name="keywords" content="计算机组成原理, 十二惊惶的gitee">
    <meta name="description" content="1．实验目的

完成算术、逻辑、移位运算实验。

熟悉ALU运算控制位的运用。


2．实验设备
Dais-CMX16+计算机组成原理教学实验系统一台。
3．实验原理
实验中所用的运算器数据通路如图 2-4-1 所示。ALU运算器由 CPL">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no">
    <meta name="renderer" content="webkit|ie-stand|ie-comp">
    <meta name="mobile-web-app-capable" content="yes">
    <meta name="format-detection" content="telephone=no">
    <meta name="apple-mobile-web-app-capable" content="yes">
    <meta name="apple-mobile-web-app-status-bar-style" content="black-translucent">
    <meta name="referrer" content="no-referrer-when-downgrade">
    <!-- Global site tag (gtag.js) - Google Analytics -->


    <title>计算机组成原理 | 十二惊惶的gitee</title>
    <link rel="icon" type="image/png" href="/shier_jinghuang/favicon.png">
    


    <!-- bg-cover style     -->



<link rel="stylesheet" type="text/css" href="/shier_jinghuang/libs/awesome/css/all.min.css">
<link rel="stylesheet" type="text/css" href="/shier_jinghuang/libs/materialize/materialize.min.css">
<link rel="stylesheet" type="text/css" href="/shier_jinghuang/libs/aos/aos.css">
<link rel="stylesheet" type="text/css" href="/shier_jinghuang/libs/animate/animate.min.css">
<link rel="stylesheet" type="text/css" href="/shier_jinghuang/libs/lightGallery/css/lightgallery.min.css">
<link rel="stylesheet" type="text/css" href="/shier_jinghuang/css/matery.css">
<link rel="stylesheet" type="text/css" href="/shier_jinghuang/css/my.css">
<link rel="stylesheet" type="text/css" href="/shier_jinghuang/css/dark.css" media="none" onload="if(media!='all')media='all'">




    <link rel="stylesheet" href="/shier_jinghuang/libs/tocbot/tocbot.css">
    <link rel="stylesheet" href="/shier_jinghuang/css/post.css">




    



    <script src="/shier_jinghuang/libs/jquery/jquery-3.6.0.min.js"></script>

<meta name="generator" content="Hexo 5.4.0"><link rel="alternate" href="/shier_jinghuang/atom.xml" title="十二惊惶的gitee" type="application/atom+xml">
</head>


<body>
    <header class="navbar-fixed">
    <nav id="headNav" class="bg-color nav-transparent">
        <div id="navContainer" class="nav-wrapper container">
            <div class="brand-logo">
                <a href="/shier_jinghuang/" class="waves-effect waves-light">
                    
                    <img src="/shier_jinghuang/medias/1.jpg" class="logo-img" alt="LOGO">
                    
                    <span class="logo-span">十二惊惶的gitee</span>
                </a>
            </div>
            

<a href="#" data-target="mobile-nav" class="sidenav-trigger button-collapse"><i class="fas fa-bars"></i></a>
<ul class="right nav-menu">
  
  <li class="hide-on-med-and-down nav-item">
    
    <a href="/shier_jinghuang/" class="waves-effect waves-light">
      
      <i class="fas fa-home" style="zoom: 0.6;"></i>
      
      <span>首页</span>
    </a>
    
  </li>
  
  <li class="hide-on-med-and-down nav-item">
    
    <a href="/shier_jinghuang/tags" class="waves-effect waves-light">
      
      <i class="fas fa-tags" style="zoom: 0.6;"></i>
      
      <span>标签</span>
    </a>
    
  </li>
  
  <li class="hide-on-med-and-down nav-item">
    
    <a href="/shier_jinghuang/categories" class="waves-effect waves-light">
      
      <i class="fas fa-bookmark" style="zoom: 0.6;"></i>
      
      <span>分类</span>
    </a>
    
  </li>
  
  <li class="hide-on-med-and-down nav-item">
    
    <a href="/shier_jinghuang/archives" class="waves-effect waves-light">
      
      <i class="fas fa-archive" style="zoom: 0.6;"></i>
      
      <span>归档</span>
    </a>
    
  </li>
  
  <li class="hide-on-med-and-down nav-item">
    
    <a href="/shier_jinghuang/about" class="waves-effect waves-light">
      
      <i class="fas fa-user-circle" style="zoom: 0.6;"></i>
      
      <span>关于</span>
    </a>
    
  </li>
  
  <li class="hide-on-med-and-down nav-item">
    
    <a href="/shier_jinghuang/contact" class="waves-effect waves-light">
      
      <i class="fas fa-comments" style="zoom: 0.6;"></i>
      
      <span>留言板</span>
    </a>
    
  </li>
  
  <li class="hide-on-med-and-down nav-item">
    
    <a href="/shier_jinghuang/friends" class="waves-effect waves-light">
      
      <i class="fas fa-address-book" style="zoom: 0.6;"></i>
      
      <span>友情链接</span>
    </a>
    
  </li>
  
  <li>
    <a href="#searchModal" class="modal-trigger waves-effect waves-light">
      <i id="searchIcon" class="fas fa-search" title="搜索" style="zoom: 0.85;"></i>
    </a>
  </li>
  <li>
    <a href="javascript:;" class="waves-effect waves-light" onclick="switchNightMode()" title="深色/浅色模式" >
      <i id="sum-moon-icon" class="fas fa-sun" style="zoom: 0.85;"></i>
    </a>
  </li>
</ul>


<div id="mobile-nav" class="side-nav sidenav">

    <div class="mobile-head bg-color">
        
        <img src="/shier_jinghuang/medias/1.jpg" class="logo-img circle responsive-img">
        
        <div class="logo-name">十二惊惶的gitee</div>
        <div class="logo-desc">
            
            犁牛之子骍且角，虽欲勿用，山川其舍诸
            
        </div>
    </div>

    <ul class="menu-list mobile-menu-list">
        
        <li class="m-nav-item">
	  
		<a href="/shier_jinghuang/" class="waves-effect waves-light">
			
			    <i class="fa-fw fas fa-home"></i>
			
			首页
		</a>
          
        </li>
        
        <li class="m-nav-item">
	  
		<a href="/shier_jinghuang/tags" class="waves-effect waves-light">
			
			    <i class="fa-fw fas fa-tags"></i>
			
			标签
		</a>
          
        </li>
        
        <li class="m-nav-item">
	  
		<a href="/shier_jinghuang/categories" class="waves-effect waves-light">
			
			    <i class="fa-fw fas fa-bookmark"></i>
			
			分类
		</a>
          
        </li>
        
        <li class="m-nav-item">
	  
		<a href="/shier_jinghuang/archives" class="waves-effect waves-light">
			
			    <i class="fa-fw fas fa-archive"></i>
			
			归档
		</a>
          
        </li>
        
        <li class="m-nav-item">
	  
		<a href="/shier_jinghuang/about" class="waves-effect waves-light">
			
			    <i class="fa-fw fas fa-user-circle"></i>
			
			关于
		</a>
          
        </li>
        
        <li class="m-nav-item">
	  
		<a href="/shier_jinghuang/contact" class="waves-effect waves-light">
			
			    <i class="fa-fw fas fa-comments"></i>
			
			留言板
		</a>
          
        </li>
        
        <li class="m-nav-item">
	  
		<a href="/shier_jinghuang/friends" class="waves-effect waves-light">
			
			    <i class="fa-fw fas fa-address-book"></i>
			
			友情链接
		</a>
          
        </li>
        
        
        <li><div class="divider"></div></li>
        <li>
            <a href="https://gitee.com/Im-so-scared-2/shier_jinghuang" class="waves-effect waves-light" target="_blank">
                <i class="fab fa-github-square fa-fw"></i>十二惊惶
            </a>
        </li>
        
    </ul>
</div>


        </div>

        
            <style>
    .nav-transparent .github-corner {
        display: none !important;
    }

    .github-corner {
        position: absolute;
        z-index: 10;
        top: 0;
        right: 0;
        border: 0;
        transform: scale(1.1);
    }

    .github-corner svg {
        color: #0f9d58;
        fill: #fff;
        height: 64px;
        width: 64px;
    }

    .github-corner:hover .octo-arm {
        animation: a 0.56s ease-in-out;
    }

    .github-corner .octo-arm {
        animation: none;
    }

    @keyframes a {
        0%,
        to {
            transform: rotate(0);
        }
        20%,
        60% {
            transform: rotate(-25deg);
        }
        40%,
        80% {
            transform: rotate(10deg);
        }
    }
</style>

<a href="https://gitee.com/Im-so-scared-2/shier_jinghuang" class="github-corner tooltipped hide-on-med-and-down" target="_blank"
   data-tooltip="十二惊惶" data-position="left" data-delay="50">
    <svg viewBox="0 0 250 250" aria-hidden="true">
        <path d="M0,0 L115,115 L130,115 L142,142 L250,250 L250,0 Z"></path>
        <path d="M128.3,109.0 C113.8,99.7 119.0,89.6 119.0,89.6 C122.0,82.7 120.5,78.6 120.5,78.6 C119.2,72.0 123.4,76.3 123.4,76.3 C127.3,80.9 125.5,87.3 125.5,87.3 C122.9,97.6 130.6,101.9 134.4,103.2"
              fill="currentColor" style="transform-origin: 130px 106px;" class="octo-arm"></path>
        <path d="M115.0,115.0 C114.9,115.1 118.7,116.5 119.8,115.4 L133.7,101.6 C136.9,99.2 139.9,98.4 142.2,98.6 C133.8,88.0 127.5,74.4 143.8,58.0 C148.5,53.4 154.0,51.2 159.7,51.0 C160.3,49.4 163.2,43.6 171.4,40.1 C171.4,40.1 176.1,42.5 178.8,56.2 C183.1,58.6 187.2,61.8 190.9,65.4 C194.5,69.0 197.7,73.2 200.1,77.6 C213.8,80.2 216.3,84.9 216.3,84.9 C212.7,93.1 206.9,96.0 205.4,96.6 C205.1,102.4 203.0,107.8 198.3,112.5 C181.9,128.9 168.3,122.5 157.7,114.1 C157.9,116.9 156.7,120.9 152.7,124.9 L141.0,136.5 C139.8,137.7 141.6,141.9 141.8,141.8 Z"
              fill="currentColor" class="octo-body"></path>
    </svg>
</a>
        
    </nav>

</header>

    



<div class="bg-cover pd-header post-cover" style="background-image: url('/shier_jinghuang/medias/featureimages/7.jpg')">
    <div class="container" style="right: 0px;left: 0px;">
        <div class="row">
            <div class="col s12 m12 l12">
                <div class="brand">
                    <h1 class="description center-align post-title">计算机组成原理</h1>
                </div>
            </div>
        </div>
    </div>
</div>




<main class="post-container content">

    
    <div class="row">
    <div id="main-content" class="col s12 m12 l9">
        <!-- 文章内容详情 -->
<div id="artDetail">
    <div class="card">
        <div class="card-content article-info">
            <div class="row tag-cate">
                <div class="col s7">
                    
                    <div class="article-tag">
                        
                            <a href="/shier_jinghuang/tags/%E5%AD%A6%E4%B9%A0%E8%AE%B0%E5%BD%95/">
                                <span class="chip bg-color">学习记录</span>
                            </a>
                        
                    </div>
                    
                </div>
                <div class="col s5 right-align">
                    
                    <div class="post-cate">
                        <i class="fas fa-bookmark fa-fw icon-category"></i>
                        
                            <a href="/shier_jinghuang/categories/%E5%AD%A6%E4%B9%A0%E7%AC%94%E8%AE%B0/" class="post-category">
                                学习笔记
                            </a>
                        
                    </div>
                    
                </div>
            </div>

            <div class="post-info">
                
                <div class="post-date info-break-policy">
                    <i class="far fa-calendar-minus fa-fw"></i>发布日期:&nbsp;&nbsp;
                    2022-01-30
                </div>
                

                
                <div class="post-date info-break-policy">
                    <i class="far fa-calendar-check fa-fw"></i>更新日期:&nbsp;&nbsp;
                    2022-01-30
                </div>
                

                
                <div class="info-break-policy">
                    <i class="far fa-file-word fa-fw"></i>文章字数:&nbsp;&nbsp;
                    9.4k
                </div>
                

                
                <div class="info-break-policy">
                    <i class="far fa-clock fa-fw"></i>阅读时长:&nbsp;&nbsp;
                    41 分
                </div>
                

                
                    <div id="busuanzi_container_page_pv" class="info-break-policy">
                        <i class="far fa-eye fa-fw"></i>阅读次数:&nbsp;&nbsp;
                        <span id="busuanzi_value_page_pv"></span>
                    </div>
				
            </div>
        </div>
        <hr class="clearfix">

        
        <!-- 是否加载使用自带的 prismjs. -->
        <link rel="stylesheet" href="/shier_jinghuang/libs/prism/prism.min.css">
        

        

        <div class="card-content article-card-content">
            <div id="articleContent">
                <p><strong>1．实验目的</strong></p>
<ul>
<li><p>完成算术、逻辑、移位运算实验。</p>
</li>
<li><p>熟悉ALU运算控制位的运用。</p>
</li>
</ul>
<p><strong>2．实验设备</strong></p>
<p>Dais-CMX16+计算机组成原理教学实验系统一台。</p>
<p><strong>3．实验原理</strong></p>
<p>实验中所用的运算器数据通路如图 2-4-1 所示。ALU运算器由 CPLD描述。运算器的输出经过2片74LS245三态门与数据总线相连，2个运算寄存器 AX、BX的数据输入端分别由4个74LS574锁存器锁存，锁存器的输入端与数据总线相连，准双向 I/O 输入输出端口用来给出参与运算的数据，经2片74LS245三态门与数据总线相连。</p>
<center><img src="D:\gitee-blog\source\_posts\计算机组成原理\1.jpg" style="zoom:50%;" /> </center>

<center><img src="D:\gitee-blog\source\_posts\计算机组成原理\2.jpg" style="zoom:80%;" /> </center>
**4.** **实验内容**

<p><strong>1. 字算术运算</strong></p>
<p>(1) 字写操作（置数操作） </p>
<p>通过“I/O 单元”二进制开关向寄存器AX和BX置数令X2,X1,X0=011，XP,W=11，I/O端设置为1122h,设置o2,o1,o0=011,OP=1，按单拍此时寄存器AX被置为1122h，再将置数端设置为3344h,o2,o1,o0=010,OP=1，按单拍。此时BX被置为3344h</p>
<p>(2) 字读操作（运算寄存器 AX 和 BX 内容送总线） </p>
<p>令o2o1o0=000,同时OP=0,关闭写使能,在令X2,X1,X0=001,XP,W=11读取数据总线位置的数据，先后令M=0,S2,S1,S0=000和M=0,S2,S1,S0=111使fun先后显示 AX值与BX值 </p>
<p>(3) 字算术运算（不带进位加） </p>
<p>令 M S2 S1 S0（K15 K13~K11=1011），FUN 及总线单元显示 AX＋BX 的结果。 </p>
<p>令 M S2 S1 S0（K15 K13~K11=1010），FUN 及总线单元显示 AX－BX 的结果。 </p>
<p><em><strong>*2.*</strong></em> <em><strong>*字节算术运算*</strong></em> </p>
<p>(1) 偶字节写（置数操作） </p>
<p>拨动“I/O 输入输出单元”开关向寄存器 ALBL置数X2 X1 X0=011XP,W=10 拨动开关令I/O=XX22h令o2o1o0=011,OP=1，按单拍向寄存器AL写入偶字节22h,o2,o1,o0=010,OP=1,拨动开关令I/O=XX44h按单拍寄存器BL写入44h。</p>
<p>(2) 偶字节读操作（运算寄存器 AL 和 BL 内容送总线） </p>
<p>令o2o1o0=000,同时OP=0,关闭写使能,在令X2,X1,X0=001,XP,W=10读取数据总线位置的数据，先后令M=0,S2,S1,S0=000和M=0,S2,S1,S0=111使fun先后显示 AL值与BL值 </p>
<p>(3) 偶字节减法运算（不带进位加） </p>
<p>令M,S2,S1,S0(K15 K13~K11=1011),FUN及总线单元显示 AL＋BL的结果。 </p>
<p>令M,S2,S1,S0(K15 K13~K11=1010),FUN及总线单元显示 AL－BL的结果。 </p>
<p><strong>示例</strong> <strong>2</strong> <strong>逻辑运算</strong> </p>
<p><em><strong>*1.*</strong></em> <em><strong>*字逻辑运算*</strong></em> </p>
<p>(1) 字写操作（置数操作） </p>
<p>通过“I/O 单元”二进制开关向寄存器AX和BX置数令X2,X1,X0=011，XP,W=11，选定数据来源为I/O单元，I/O端设置为1122h,设置o2,o1,o0=011,OP=1，按单拍此时寄存器AX被置为1122h，再将置数端设置为3344h,o2,o1,o0=010,OP=1，按单拍。此时BX被置为3344h</p>
<p>(2) 字读操作（运算寄存器 AX 和 BX 内容送总线） </p>
<p>令o2o1o0=000,同时OP=0,关闭写使能,在令X2,X1,X0=001,XP,W=11读取数据总线位置的数据，先后令M=0,S2,S1,S0=000和M=0,S2,S1,S0=111使fun先后显示 AX值与BX值 若运算控制位设为（M S2 S1 S0=0000）则F=AL，即AL内容送到数据总线。若运算控制位设为(M S2S1S0=0111)则F=BL,即BL内容送到数据总线。</p>
<p>(3) 字逻辑运算 </p>
<p>令M,S2,S1,S0(K15 K13~K11=0010),为逻辑与,FUN及总线显示AX逻辑与BX的结果。</p>
<p>令M,S2,S1,S0(K15 K13~K11=0011),为逻辑或,FUN及总线显示AX逻辑或BX的结果。</p>
<p><em><strong>*2.*</strong></em> <em><strong>*字节逻辑运算*</strong></em> </p>
<p>(1) 偶字节写操作（置数操作） </p>
<p>拨动“I/O 输入输出单元”开关向寄存器 AL 和 BL 置数，令X2,X1,X0=011,XPW=10 选定数据来源为I/O设备置数为XX22h,拨动开关使o2 o1 o0=011 OP=1，按单拍寄存器AL 为22h，再次置数 使得I/O=XX44h,令o2,o1,o0=010 OP=1，按单拍,此时寄存器BL为44h </p>
<p>(2) 偶字节读操作（运算寄存器 AL 和 BL 内容送数据总线） </p>
<p>o2,o1,o0=000 OP=0关闭写使能 X2,X1,X0=001 XP W=10分别令M=0 S2 S1 S0=000 与M=0,S2,S1,S0=111使得数据总线分别显示AL,BL。</p>
<p>① 若运算控制位设为（M S2 S1 S0=0000）则 F=AL，即 AL 内容送到数据总线。 </p>
<p>② 若运算控制位设为（M S2 S1 S0=0111）则 F=BL，即 BL 内容送到数据总线。 </p>
<p>(3) 偶字节逻辑运算 </p>
<p>令 M S2 S1 S0（K15 K13~K11=0010），为逻辑与，FUN 及总线显示 AL 逻辑与 BL 的结果。 </p>
<p>令 M S2 S1 S0（K15 K13~K11=0011），为逻辑或，FUN 及总线显示 AL 逻辑或 BL 的结果。 </p>
<p>(4) 奇字写操作（置数操作） </p>
<p>拨动“I/O 输入输出单元”开关向寄存器AH和BH置数，操作步骤如下:X2 X1 X0=011 XP W=10选定数据来源为I/O设备置数I/O=XX55h,随后令o2,o1,o0=011 OP=0,按单拍寄存器AH此时的数据为55h再次对I/O单元置数,I/O=XX66h令o2o1o0=010,OP=0,按单拍寄存器BH写入数据66h。</p>
<p>(5) 奇字节读操作（运算寄存器 AH 和 BH 内容送总线） </p>
<p>关闭 AH、BH 写使能，令 K17=K18=1，按下流程分别读 AH、BH。 </p>
<p>o2,o1,o0=000 OP=0关闭写使能 X2,X1,X0=001 XP W=00分别令M=0 S2 S1 S0=000 与M=0,S2,S1,S0=111使得数据总线分别显示AH,BH。</p>
<p>① 若运算控制位设为（M S2 S1 S0=0000）则 F=AH，即 AH 内容送到数据总线。 </p>
<p>② 若运算控制位设为（M S2 S1 S0=0111）则 F=BH，即 BH 内容送到数据总线。 </p>
<p>(6) 奇字节逻辑运算 </p>
<p>令M,S2,S1,S0(K15 K13~K11=0010),为逻辑与，FUN及总线显示AH逻辑与BH的结果。 </p>
<p>令M,S2,S1,S0(K15 K13~K11=0011),为逻辑或，FUN及总线显示AH逻辑或BH的结果。</p>
<p><strong>5．实验心得</strong></p>
<p>作为验证型实验根据实验指导手册做很简单，但是我们学习不能仅仅只停到这一步，还是要了解实验操作背后的实验原理，明白每一步操作所对应的逻辑功能，比简单的重复完成这一个实验更加重要。</p>
<h2 id="实验二-通用寄存器实验"><a href="#实验二-通用寄存器实验" class="headerlink" title="实验二  通用寄存器实验"></a>实验二  通用寄存器实验</h2><p><strong>1．实验目的</strong></p>
<p>（1） 熟悉通用寄存器的数据通路。</p>
<p>（2）掌握通用寄存器的构成和运用。</p>
<p><strong>2．实验设备</strong></p>
<p>Dais-CMX16+计算机组成原理教学实验系统一台。</p>
<p><strong>3．实验要求</strong></p>
<p>在掌握了AX、BX运算寄存器的读写操作后，继续完成CX、DX通用寄存器的数据写入与读出。</p>
<p><strong>4.</strong> <strong>实验原理</strong></p>
<table>
<thead>
<tr>
<th>目标使能</th>
<th>通用寄存器目标编址</th>
<th>功能说明</th>
<th></th>
<th></th>
<th></th>
</tr>
</thead>
<tbody><tr>
<td>K19~K17</td>
<td>IR</td>
<td>K16</td>
<td>K6</td>
<td>T4</td>
<td></td>
</tr>
<tr>
<td>o2~o0</td>
<td>IR1</td>
<td>OP</td>
<td>W</td>
<td></td>
<td></td>
</tr>
<tr>
<td>111</td>
<td>0</td>
<td>1</td>
<td>1</td>
<td>↑</td>
<td>CX字写</td>
</tr>
<tr>
<td>0</td>
<td>1</td>
<td>0</td>
<td>↑</td>
<td>CL偶字节写(R0)</td>
<td></td>
</tr>
<tr>
<td>0</td>
<td>0</td>
<td>X</td>
<td>↑</td>
<td>CH奇字节写(R1)</td>
<td></td>
</tr>
<tr>
<td>1</td>
<td>1</td>
<td>1</td>
<td>↑</td>
<td>DX字写</td>
<td></td>
</tr>
<tr>
<td>1</td>
<td>1</td>
<td>0</td>
<td>↑</td>
<td>DL偶字节写(R2)</td>
<td></td>
</tr>
<tr>
<td>1</td>
<td>0</td>
<td>X</td>
<td>↑</td>
<td>DH奇字节写(R2)</td>
<td></td>
</tr>
</tbody></table>
<p><img src="file:///C:\Users\888888\AppData\Local\Temp\ksohtml\wpsA046.tmp.jpg" alt="img"> </p>
<p><strong>5****．实验内容</strong></p>
<p><img src="file:///C:\Users\888888\AppData\Local\Temp\ksohtml\wpsA047.tmp.jpg" alt="img"> </p>
<p>(1)寄存器组的字写入:</p>
<p>通过“I/O 单元”把CX的地址00打入IR，然后向CX写入2211h,操作步骤如下:令X2 X1 X0=011 XP W=11选定数据来源为I/O单元,令I/O=XX00h写入数据，令IR=XX00h,MWR IR=11 OP=1,按单拍之后将MWR,IR置为0,0防止数据再次写入，再将置数据I/O=2211h o2 o1 o0=111 OP=1，按单拍此时CX的数据为=2211h</p>
<p>通过I/O单元把DX的地址02打入IR然后向DX写入4433h,操作步骤如下:X2,X1,X0=011同时XP W=11选的数据来源为I/O单元 拨动I/O单元使得I/O=XX02h,再令MWR,IR=11OP=1,按单拍此时IR=XX02h,此时DX的地址02打入IR,在令MWR,IR=00,令I/O=4433h,o2o1o0=111 OP=1,按单拍将数据写入DX,此时DX的数据为DX=4433h </p>
<p>(2) 寄存器组的字节写入:</p>
<p><img src="file:///C:\Users\888888\AppData\Local\Temp\ksohtml\wpsA048.tmp.jpg" alt="img"> </p>
<p>通过I/O单元把CX的地址00打入IR，然后向CH写入55h操作步骤如下:令X2,X1,X0=011同时XP W=11选的数据来源为I/O单元，拨动I/O单元使得I/O=XX02h，拨动开关使MWR IR=11,OP=1，按单拍把CX的地址00打入IR,在令MWR，IR=00防止地址再次写入，令W=0将I/O区域的值置为XX55h,同时令o2 o1 o0=111,OP=0，按单拍将55h写入CH。</p>
<p>在IR保持为xx00的条件下,可省略打地址环节.按下流程向CL写入AAh令X2,X1,X0=011同时XP W=10选定数据来源为I/O单元，拨动I/O单元开关使得I/O=XXAAh,拨动开关将o2,o1, o0置为111同时OP=0,按单拍将数据55h写入CL,在令o2 o1 o0=000关闭写选通。</p>
<p>（3）寄存器组字读：</p>
<p><img src="file:///C:\Users\888888\AppData\Local\Temp\ksohtml\wpsA049.tmp.jpg" alt="img"> </p>
<p>通过I/O 单元把 CX 地址打入IR,然后CX送总线，操作步骤如下：令X2 X1 X0=011,同时XP W=11选定数据来源为I/O单元，拨动I/O单元开关使得I/O=XX00h ,设置MWR IR=11 OP=1，按单拍把CX的地址打入总线MWR IR=00防止后续继续有数据传入令X2 X1 X0=110同时XP W=11 IR端显示来源于CX的数据。</p>
<p>通过I/O单元把DX地址打入IR，然后DX送总线，操作步骤如下:X2,X1,X0=011同时XP W=11选定数据来源为I/O单元，拨动I/O单元开关使得I/O=XX02h MWR IR=11 OP=1，按单拍再将MWR IR置为0 防止后续继续有数据传入令X2 X1 X0=110 XP W=11此时IR端显示来源于DX的数据</p>
<p>(4) 寄存器组字节读：</p>
<p>通过I/O单元把 CX 地址打入 IR，然后按字节方式分别读出 CL、CH。令X2,X1,X0=011同时XP,W=11选定数据来源为I/O单元，拨动I/O单元开关使得I/O=XX00h再将MWR,IR分别置为1,再设置OP=1，按单拍 将CX的地址打入IR,此时IR=XX00h,MWR IR=00 ,令X2 X1 X0=110 ,XP, W=10此时IR的数据来源于CL;在令 X2 X1 X0=110 ,XP W=00此时IR的数据来源于CH。</p>
<p><strong>6．实验心得</strong></p>
<p>第二次的计算机组成原理的实验课,实验内容甚至比上次更少，最让人印象深刻的是课件和《计算机组成原理实验指南》上对实验的操作存在错误，这个也更要求我们掌握实验原理能够真正理解实验本质。在完成CX、DX通用寄存器的数据写入与读出的实验操作后，已经能够做到熟悉通用寄存器的数据通路和掌握通用寄存器的构成和运用。</p>
<p><strong>实验三  存储器****读写实验</strong></p>
<p><strong>1．实验目的</strong></p>
<p>熟悉和了解存储器组织与总线组成的数据通路。</p>
<p><strong>2．实验设备</strong></p>
<p>Dais-CMX16+计算机组成原理教学实验系统一台。</p>
<p><strong>3．实验要求</strong></p>
<p>按照实验步骤完成实验项目，掌握存储部件在原理计算机中的运用。</p>
<p><strong>4.</strong> <strong>实验原理</strong></p>
<p>存储器是计算机的存储部件，用于存放程序和数据。存储器是计算机信息存储的核心，是计算机必不可少的部件之一，计算机就是按存放在存储器中的程序自动有序不间断地进行工作。本系统从提高存储器存储信息效率的角度设计数据通路，按现代计算机中最为典型的分段存储理念把存储器组织划分为程序段、数据段等，由此派生了数据总线（DBus）、指令总线（IBus）微总线（μBus）等与现代计算机设计规范相吻合的实验环境。实验所用的存储器电路原理如图 2-4-10 所示，该存储器组织由二片 6116 构成具有奇偶概念的十六位信息存储体系，该存储体系AddBus由IP指针和AR指针分时提供，E/M 控位为“1”时选通IP，反之选通 AR。该存储体系可随机定义总线宽度，动态变更总线结构，把我们的教学实验提高到能与现代计算机设计规范相匹配与接轨的层面。</p>
<p><img src="file:///C:\Users\888888\AppData\Local\Temp\ksohtml\wpsA04F.tmp.jpg" alt="img"> </p>
<table>
<thead>
<tr>
<th>程序段与数据段源寻址</th>
<th></th>
<th></th>
<th></th>
<th></th>
<th></th>
<th></th>
</tr>
</thead>
<tbody><tr>
<td>源使能</td>
<td>源编址</td>
<td>注释</td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td>X2</td>
<td>X1</td>
<td>X0</td>
<td>E/M</td>
<td>W</td>
<td>A0</td>
<td></td>
</tr>
<tr>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>程序段字读</td>
</tr>
<tr>
<td>0</td>
<td>0</td>
<td>程序段偶读</td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td>X</td>
<td>1</td>
<td>程序段奇读</td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td>1</td>
<td>1</td>
<td>0</td>
<td>数据段字读</td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td>0</td>
<td>0</td>
<td>数据段偶读</td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td>X</td>
<td>1</td>
<td>数据段奇读</td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
</tbody></table>
<table>
<thead>
<tr>
<th>程序段与数据段目的寻址</th>
<th></th>
<th></th>
<th></th>
<th></th>
</tr>
</thead>
<tbody><tr>
<td>目的编址</td>
<td>注释</td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td>MWR</td>
<td>E/M</td>
<td>W</td>
<td>A0</td>
<td></td>
</tr>
<tr>
<td>1</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>程序段字写</td>
</tr>
<tr>
<td>0</td>
<td>0</td>
<td>程序段偶写</td>
<td></td>
<td></td>
</tr>
<tr>
<td>X</td>
<td>1</td>
<td>程序段奇写</td>
<td></td>
<td></td>
</tr>
<tr>
<td>1</td>
<td>1</td>
<td>0</td>
<td>数据段字写</td>
<td></td>
</tr>
<tr>
<td>0</td>
<td>0</td>
<td>数据段偶写</td>
<td></td>
<td></td>
</tr>
<tr>
<td>X</td>
<td>1</td>
<td>数据段奇写</td>
<td></td>
<td></td>
</tr>
</tbody></table>
<p><strong>5****．实验内容</strong></p>
<p>\1. 数据段读写操作</p>
<p>（1） 数据存储器字写</p>
<p>在进行数据存储器字操作时，地址线A0必须为0（偶地址）。向数据段的0~0005h存储单元写入112233445566一串数据，以0址单元写入数据1122h为例表述操作流程。</p>
<p><img src="file:///C:\Users\888888\AppData\Local\Temp\ksohtml\wpsA05F.tmp.jpg" alt="img"> </p>
<p>按照上述操作流程完成 0002~0005h单元写入33445566的操作。</p>
<p>I/0输入地址0000h（DBUS=0000h）将其写入AR，关闭地址写入；I/O输入数据1122h（DBUS=1122h）将其存入地址为0000和0001中，EM显示2211，关闭存储写入。</p>
<p>I/0输入地址0002h（DBUS=0002h）将其写入AR，关闭地址写入；I/O输入数据3344h（DBUS=3344h）将其存入地址为0002和0003中，EM显示4433，关闭存储写入。</p>
<p>I/0输入地址0004h（DBUS=0004h）将其写入AR，关闭地址写入；I/O输入数据5566h（DBUS=5566h）将其存入地址为0004和0005中，EM显示6655，关闭存储写入。</p>
<p>（2） 数据段读操作（字）</p>
<p>依次读出数据段0~0005h单元的内容，这里以0址单元读出为例阐述操作流程。</p>
<p><img src="file:///C:\Users\888888\AppData\Local\Temp\ksohtml\wpsA060.tmp.jpg" alt="img"> </p>
<p>执行上述流程总线单元应显示1122h;若正确可按上述流程读出 0002~0005h 单元的内容。</p>
<p>I/O置地址0000将其写入AR，关闭写入；E/M=1，EM显示地址对应存储内容为2211。读出操作，DBUS显示为1122</p>
<p>I/O置地址0002将其写入AR，关闭写入；E/M=1，EM显示地址对应存储内容为4433。读出操作，DBUS显示为3344</p>
<p>I/O置地址0004将其写入AR，关闭写入；E/M=1，EM显示地址对应存储内容为6655。读出操作，DBUS显示为5566</p>
<p>\2. 存储器程序段读写操作</p>
<p>（1）程序段字节写操作</p>
<p>① 计算机规范的取指操作均以字节为单位。所以本实验以字节操作方式展开。程序段写入必须从定义地址入手，然后再进入程序存储器的写入。</p>
<p>② PC 指针是带预置加法计数器，因此在输入起始地址后一旦后续地址为 PC+1的话就不需重装 PC，用PC+1指令完成下续地址的读写操作。</p>
<p>③PC地址装载写入与PC+1写入流程</p>
<p><img src="file:///C:\Users\888888\AppData\Local\Temp\ksohtml\wpsA061.tmp.jpg" alt="img"> </p>
<p>按照上述PC装载写入与PC+1写入的流程分别对0000~0003h写入12345678h。</p>
<p>I/O置地址为0000，将地址写入PC为0000，关闭地址写入；I/O数据为3412，数据写入EM显示为1212。地址增加为0001，将3434写入EM。</p>
<p>I/O置地址为0002，将地址写入PC为0002，关闭地址写入；I/O数据为7856，数据写入EM显示为5656。地址增加为0003，将7878写入EM。</p>
<p>（2）程序段字节读操作</p>
<p>PC地址装载读出及 PC+1读出流程</p>
<p><img src="file:///C:\Users\888888\AppData\Local\Temp\ksohtml\wpsA062.tmp.jpg" alt="img"> </p>
<p>按照上述PC装载读出与PC+1读出的流程分别读出0000~0003h单元内容，应为12345678h。</p>
<p>I/O置地址为0000，将地址写入PC为0000，关闭地址写入；选通存储器打开将数据写入总线，EM显示1212。IP置1，单拍使地址+1，当地址为0001时EM显示3434；IP置1，单拍使地址+1，当地址为0002时EM显示5656；IP置1，单拍使地址+1，当地址为0003时EM显示7878；</p>
<p><strong>6．实验心得</strong></p>
<p>\1. EM与I/O内容显示不同：2211h -&gt; 1122h  </p>
<p>原因：EM显示的内容低位在前。</p>
<p>\2. 程序段字节读操作: I/O口拨数据7856h，执行上面的方框L：4(XP=1)-&gt;3(IP=0)-&gt;4-&gt;5</p>
<p>E/M=0，且IP=1时，PC+1</p>
<p><strong>实验四  中断控制实验</strong></p>
<p><strong>1．实验目的</strong></p>
<p>（1） 熟悉中断的硬件机制。</p>
<p>（2） 了解中断的编程规则。</p>
<p>（3）掌握中断的控制方法。</p>
<p><strong>2．实验设备</strong></p>
<p>Dais-CMX16+计算机组成原理教学实验系统一台。</p>
<p><strong>3．实验要求</strong></p>
<p>所谓中断就是指处理机暂时终止执行现行程序而转去处理更加紧迫的事件服务程序，待处理机完毕后再自动返回执行原来的程序过程。</p>
<p>按图2-4-12所示，本系统提供了一个单级中断硬件机制，由中断请求源INT、中断允许标志IEQ和中断响应标志IAQ组成。</p>
<p>微程序控制器每执行一条机器指令之后，先查询中断允许标志IEQ，如果IEQ为0，则继续执行下一条机器指令，若检测到IEQ为1，则强制转入微程序控制器的0003h号单元执行中断响应微服务。期间程序首先置位中断响应标志IAQ，其次执行当前PC的进栈操作，然后按照机器程序的要求随机定义中断向量，把中断服务程序入口地址装入程序计数器PC中，转入中断服务子程序的执行。</p>
<p>遇RET指令，执行中断服务返回微操作，清除中断服务响应标志IAQ，把栈顶所指单元的内容装入程序计数器PC中，恢复执行被中断的机器程序。</p>
<p><img src="file:///C:\Users\888888\AppData\Local\Temp\ksohtml\wpsA068.tmp.jpg" alt="img"> </p>
<p><strong>4.</strong> <strong>实验原理</strong></p>
<table>
<thead>
<tr>
<th>K16</th>
<th>K6</th>
<th>K3</th>
<th>按钮</th>
<th>节拍</th>
<th>功能</th>
<th>说明</th>
</tr>
</thead>
<tbody><tr>
<td>Op</td>
<td>W</td>
<td>Ie</td>
<td>INT</td>
<td>T4</td>
<td></td>
<td></td>
</tr>
<tr>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>↑</td>
<td>1→IEQ</td>
<td>锁存中断请求</td>
</tr>
<tr>
<td>0</td>
<td>1</td>
<td>1</td>
<td>X</td>
<td>↑</td>
<td>0→IEQ</td>
<td>清除中断请求</td>
</tr>
</tbody></table>
<table>
<thead>
<tr>
<th>K7</th>
<th>K6</th>
<th>K3</th>
<th>K0</th>
<th>节拍</th>
<th>功能</th>
<th>说明</th>
</tr>
</thead>
<tbody><tr>
<td>Op</td>
<td>W</td>
<td>Ie</td>
<td>Ids</td>
<td>T4</td>
<td></td>
<td></td>
</tr>
<tr>
<td>1</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>↑</td>
<td>1→IAQ</td>
<td>中断响应</td>
</tr>
<tr>
<td>1</td>
<td>1</td>
<td>1</td>
<td>0</td>
<td>↑</td>
<td>0→IAQ</td>
<td>中断退出</td>
</tr>
</tbody></table>
<p><strong>5．实验****内容</strong></p>
<p>中断允许控制</p>
<p>用一双头实验导线将中断请求源输入插孔XINT与中断源产生插孔INT相连接。</p>
<p><img src="file:///C:\Users\888888\AppData\Local\Temp\ksohtml\wpsA069.tmp.png" alt="img"></p>
<p>将K23~K0全部置为0，关闭控制位，将OP,W,IE三个开关置为001，按住中断按钮将INT置为0，按单拍，打入一个上升沿，此时D触发器D=1;CP为上升沿，又D触发器的现态1变为0。Q`=0，此时指示灯IEQ亮起，在令OP,W,IE=011,打入一个上升沿,此D触发器D=1,CP为上升沿，D触发器的现态有0变为1，Q’=1，指示灯两端电压相等，指示灯不会亮起此时IEQ灯灭。</p>
<p><img src="file:///C:\Users\888888\AppData\Local\Temp\ksohtml\wpsA06A.tmp.png" alt="img"></p>
<p>将K23~K0全部置为0，关闭控制位，将OP,W,IE三个开关置为101，按单拍IEQ灯亮起，随后将OP,W,IE三个开关置为111，按单拍打入一个上升沿，IAQ灯灭。</p>
<p><strong>6****．实验心得</strong></p>
<p>中断控制方式就是实时控制、故障自动处理。它的基本过程是计算机运行过程中，出现某些意外情况需主机干预时，机器能自动停止正在运行的程序并转入处理新情况的程序，处理完毕后又返回原被暂停的程序继续运行。</p>
<p>时隔半个月在上计算机组成原理的实验课，这次的实验课内容格外的少，也更有时间去思考每一步操作所对应的电路原理，对电路上的触发器的复习，使我对这个实验的认识更加的深刻。</p>
<p><strong>实验****五</strong>  <strong>基本模型机的设计与实现</strong></p>
<p><strong>1．实验目的</strong></p>
<p>（1） 在掌握部件单元电路实验的基础上，构造一台基本模型计算机。</p>
<p>（2） 为其定义5条机器指令，并编写相应的微程序，上机调试掌握整机概念。</p>
<p><strong>2．实验设备</strong></p>
<p>Dais-CMX16+计算机组成原理教学实验系统一台；</p>
<p>计算机一台。</p>
<p><strong>3．实验****原理</strong></p>
<p>手动控制实验过程中，各部件单元的控制信号是以人为模拟产生为主，而本次实验将能在微程序控制下自动产生各部件单元的控制信号，实现特定指令的功能。</p>
<p>计算机数据通路的控制将由微程序控制器来完成，CPU从EM主存中取出一条机器指令到指令执行结束的一个指令周期全部由微指令组成的序列来完成，即一条机器指令对应一个微程序。</p>
<p><strong>4. 指令格式</strong></p>
<p>1.指令格式</p>
<table>
<thead>
<tr>
<th>7 6 5</th>
<th>4</th>
<th>3 2</th>
<th>1 0</th>
</tr>
</thead>
<tbody><tr>
<td>OP-CODE</td>
<td>0</td>
<td>Rs</td>
<td>Rd</td>
</tr>
<tr>
<td>Addr</td>
<td></td>
<td></td>
<td></td>
</tr>
</tbody></table>
<p>其中OP-CODE为操作码段，位于指令字节高三位（IR7~IR5）；第四位IR4是保留位，指定为零；低四位为源与目的寄存器地址，它们的编码见下表；Addr定义操作数或操作地址。</p>
<table>
<thead>
<tr>
<th>Rs或Rd</th>
<th>选定的寄存器</th>
</tr>
</thead>
<tbody><tr>
<td>00011011</td>
<td>R0R1R2R3</td>
</tr>
</tbody></table>
<p>2.指令系统</p>
<table>
<thead>
<tr>
<th>助记符</th>
<th>机器指令码</th>
<th>说明</th>
</tr>
</thead>
<tbody><tr>
<td>IN R0,IOL</td>
<td>00100000</td>
<td>i/o(数据开关)偶字节→r0</td>
</tr>
<tr>
<td>ADD R0,[addr]</td>
<td>01000000 XXXXXXXX XXXXXXXX</td>
<td>R0+[addr]→R0</td>
</tr>
<tr>
<td>STA [addr],R0</td>
<td>01100000 XXXXXXXX XXXXXXXX</td>
<td>R0→[addr]</td>
</tr>
<tr>
<td>OUT [addr],IOH</td>
<td>10000000 XXXXXXXX XXXXXXXX</td>
<td>RAM→i/o(奇字节)</td>
</tr>
<tr>
<td>JMP addr</td>
<td>10100000 XXXXXXXX XXXXXXXX</td>
<td>addr→PC</td>
</tr>
</tbody></table>
<p>实验所用的机器指令程序</p>
<table>
<thead>
<tr>
<th>地址</th>
<th>指令代码</th>
<th>助记符</th>
<th>功能</th>
</tr>
</thead>
<tbody><tr>
<td>000</td>
<td>20</td>
<td>in r0,ioL</td>
<td>IOL(数据开关)偶字节→R0</td>
</tr>
<tr>
<td>001</td>
<td>40 00</td>
<td>add r0,[RAM]</td>
<td>R0+RAM→R0</td>
</tr>
<tr>
<td>003</td>
<td>70</td>
<td>RRC r0</td>
<td>R0带进位右移→R0</td>
</tr>
<tr>
<td>004</td>
<td>10</td>
<td>rl r0</td>
<td>R0左移→R0</td>
</tr>
<tr>
<td>005</td>
<td>60 01</td>
<td>sta [RAM],r0</td>
<td>R0→RAM</td>
</tr>
<tr>
<td>007</td>
<td>80 01</td>
<td>out ioH,[RAM]</td>
<td>RAM→I/O奇字节</td>
</tr>
<tr>
<td>009</td>
<td>A0 00</td>
<td>jmp 000h</td>
<td>RAM→PC</td>
</tr>
</tbody></table>
<p><img src="file:///C:\Users\888888\AppData\Local\Temp\ksohtml\wpsA080.tmp.jpg" alt="img"> </p>
<p>基本模型机微程序流程图</p>
<p><strong>5<strong><strong>．实验</strong></strong>方法</strong></p>
<p>打开——mxj1.asm,装载,微单步(无法联机时，跳过联机步骤，直接装载也可以做实验)</p>
<p>;基本模型机程序</p>
<p>#LOAD “MXJ1.IS”     ;预调入指令系统/微程序</p>
<p>#SET RAM 0260h = 5500h  ;数据区0260H单元预置数据5500h</p>
<p>data   segment     ;将程序装载到数据存储器</p>
<p>​    assume ds:data</p>
<p>​    org  0</p>
<p>start:  in   r0, iol</p>
<p>​    add  r0, 0260h</p>
<p>​    sta  0261h, r0</p>
<p>​    out  ioh, 0261h</p>
<p>​    jmp  start</p>
<p>data   ends</p>
<p>​    end  start</p>
<p>PC=AR，AR通过地址获得RAM中的数据。初始状态PC=0000.将PAM数据2040高位20置入IR=2020.I/O输入FFFF，将其置入CX=FFFF。PC=0001，将PAM数据2040低位40置入IR=4040。通过程序计数器PC不断加1，将数据存储器RAM中的数据调出。PC=0002，6002先调出高位60，PC+1，PC=0003，再调出低位02，BX=0260。AX=0000，运算器ALU计算FUN=0260，数据置入AR=0260，RAM=5500。55置入BX低位，BX=0255；CX值FF置入AX低位，，AX=00FF，运算器ALU计算FUN=0254。低位54置入CX低位，CX=FF54。PC+1，PC=0004，PC=AR，AR通过地址获得RAM中的数据6061，PC=0004,60置入IR=6060；PC=0005,61置入BX低位BX=0261；PC=0006，PC=AR，AR通过地址获得RAM中的数据0280。AX=00FF,BX=0261,运算器ALU计FUN=0261。</p>
<p><strong>6．实验心得</strong></p>
<p>姑且算是第一次使用软件模拟计算机进行计算机组成系统的实验吧，难度在于这个汇编语言的不了解，按照老师可上要求走的话并没有太大难度，但是总是感觉有些地方没有清楚。</p>
<p><strong>实验六  分段****模型机的设计与实现</strong></p>
<p><strong>1．实验目的</strong></p>
<p>（1） 在掌握基本模型机的基础上，构造一台含有段概念（程序与数据）分段寻址的模型机。</p>
<p>（2） 机器指令与基本模型机相同的情况下编写段式的微程序，上机调试掌握段概念运用。</p>
<p><strong>2．实验设备</strong></p>
<p>Dais-CMX16+计算机组成原理教学实验系统一台；</p>
<p>计算机一台。</p>
<p><strong>3．实验****原理</strong></p>
<p>在基本模型机的实践中，CPU的取指以AR作为地址指针，在微程序流程中必须要通过PC送AR这一途径完成操作码与操作数的存取，这种瓶颈现象降低了CPU的工作效率，仅适用于基础教学，与通用机的设计规范差距甚远。</p>
<p>目前通用机的规范寻址方式通常把存储器组织分为程序段、数据段、堆栈段……地址指针的定义由此分为程序指针、数据指针、堆栈指针等，进一步提高了CPU的工作效率。</p>
<p>段式模型机在取指时直接默认PC指针，完成操作码与操作数的存取。使我们的模型机设计“不存在”也“不需要”考虑指令预取的问题。</p>
<p><em><strong>*指令系统：*</strong></em></p>
<table>
<thead>
<tr>
<th>助记符</th>
<th>机器指令码</th>
<th>说明</th>
</tr>
</thead>
<tbody><tr>
<td>IN R0,IOL</td>
<td>00100000</td>
<td>i/o(数据开关)偶字节→r0</td>
</tr>
<tr>
<td>ADD R0,[addr]</td>
<td>01000000 XXXXXXXX XXXXXXXX</td>
<td>R0+[addr]→R0</td>
</tr>
<tr>
<td>STA [addr],R0</td>
<td>01100000 XXXXXXXX XXXXXXXX</td>
<td>R0→[addr]</td>
</tr>
<tr>
<td>OUT [addr],IOH</td>
<td>10000000 XXXXXXXX XXXXXXXX</td>
<td>RAM→i/o(奇字节)</td>
</tr>
<tr>
<td>JMP addr</td>
<td>10100000 XXXXXXXX XXXXXXXX</td>
<td>addr→PC</td>
</tr>
</tbody></table>
<p><img src="file:///C:\Users\888888\AppData\Local\Temp\ksohtml\wpsA086.tmp.jpg" alt="img"> </p>
<p>分段模型机数据通路</p>
<p>​    <img src="file:///C:\Users\888888\AppData\Local\Temp\ksohtml\wpsA087.tmp.jpg" alt="img"></p>
<p>实验所用的机器指令程序</p>
<table>
<thead>
<tr>
<th>地址</th>
<th>指令代码</th>
<th>助记符</th>
<th>功能</th>
</tr>
</thead>
<tbody><tr>
<td>000</td>
<td>20</td>
<td>in r0,ioL</td>
<td>i/o(数据开关)偶字节→r0</td>
</tr>
<tr>
<td>001</td>
<td>40 60 02</td>
<td>add r0,[addr]</td>
<td>r0+RAM→r0</td>
</tr>
<tr>
<td>004</td>
<td>60 61 02</td>
<td>sta [addr],r0</td>
<td>r0→RAM</td>
</tr>
<tr>
<td>007</td>
<td>80 61 02</td>
<td>out [addr],ioH</td>
<td>RAM→i/o(奇字节)</td>
</tr>
<tr>
<td>00a</td>
<td>a0 00 00</td>
<td>jmp 000h</td>
<td>RAM→pc</td>
</tr>
</tbody></table>
<p><strong>4.</strong> <strong>实验****方法</strong></p>
<p>打开——mxj2.as,装载,微单步</p>
<table>
<thead>
<tr>
<th>微址00002)1)</th>
<th>M23</th>
<th>M22</th>
<th>M21</th>
<th>M20</th>
<th>M19</th>
<th>M18</th>
<th>M17</th>
<th>M16</th>
<th>代码</th>
<th>M15</th>
<th>M14</th>
<th>M13</th>
<th>M12</th>
<th>M11</th>
<th>M10</th>
<th>M9</th>
<th>M8</th>
<th>代码</th>
<th>M7</th>
<th>M6</th>
<th>M5</th>
<th>M4</th>
<th>M3</th>
<th>M2</th>
<th>M1</th>
<th>M0</th>
<th>代码</th>
<th>后续微址</th>
<th>说明</th>
</tr>
</thead>
<tbody><tr>
<td>E/M</td>
<td>IP</td>
<td>MWR</td>
<td>R/M</td>
<td>o2</td>
<td>o1</td>
<td>o0</td>
<td>OP</td>
<td>M</td>
<td>CN</td>
<td>S2</td>
<td>S2</td>
<td>S0</td>
<td>X2</td>
<td>X1</td>
<td>X0</td>
<td>XP</td>
<td>W</td>
<td>ALU</td>
<td>Iu</td>
<td>IE</td>
<td>IR</td>
<td>Icz</td>
<td>Ids</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td>000</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>00</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>00</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>00</td>
<td>+1</td>
<td>空操作</td>
</tr>
<tr>
<td>001</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>1</td>
<td>43</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>04</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>1</td>
<td>05</td>
<td>可变</td>
<td>IBUS→IR</td>
</tr>
<tr>
<td>600</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>00</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>00</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>1</td>
<td>1</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>5A</td>
<td>001</td>
<td>关中断</td>
</tr>
<tr>
<td>640</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>1</td>
<td>1</td>
<td>0</td>
<td>0E</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>1</td>
<td>03</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>92</td>
<td>001</td>
<td>I/O→R0</td>
</tr>
<tr>
<td>680</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>1</td>
<td>05</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>04</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>20</td>
<td>+1</td>
<td>RAM→BL</td>
</tr>
<tr>
<td>681</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>44</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>04</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>20</td>
<td>+1</td>
<td>RAM→BH</td>
</tr>
<tr>
<td>682</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>1</td>
<td>43</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>1</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>39</td>
<td>1</td>
<td>1</td>
<td>1</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>F0</td>
<td>6A0</td>
<td>BX→AR</td>
</tr>
<tr>
<td>6A0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>1</td>
<td>85</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>04</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>20</td>
<td>+1</td>
<td>RAM→BL</td>
</tr>
<tr>
<td>6A1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>1</td>
<td>1</td>
<td>07</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>1</td>
<td>0</td>
<td>06</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>20</td>
<td>+1</td>
<td>R0→AL</td>
</tr>
<tr>
<td>6A2</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>1</td>
<td>1</td>
<td>0</td>
<td>0E</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>99</td>
<td>1</td>
<td>0</td>
<td>1</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>B2</td>
<td>001</td>
<td>A+B→R0</td>
</tr>
<tr>
<td>6C0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>1</td>
<td>05</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>04</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>20</td>
<td>+1</td>
<td>RAM→BL</td>
</tr>
<tr>
<td>6C1</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>44</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>04</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>20</td>
<td>+1</td>
<td>RAM→BH</td>
</tr>
<tr>
<td>6C2</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>1</td>
<td>43</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>1</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>39</td>
<td>1</td>
<td>1</td>
<td>1</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>F0</td>
<td>6E0</td>
<td>BX→AR</td>
</tr>
<tr>
<td>6E0</td>
<td>1</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>A0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>1</td>
<td>0</td>
<td>06</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>12</td>
<td>001</td>
<td>R0→RAM</td>
</tr>
<tr>
<td>700</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>1</td>
<td>05</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>04</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>20</td>
<td>+1</td>
<td>RAM→BL</td>
</tr>
<tr>
<td>701</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>44</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>04</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>20</td>
<td>+1</td>
<td>RAM→BH</td>
</tr>
<tr>
<td>702</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>1</td>
<td>43</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>1</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>39</td>
<td>1</td>
<td>1</td>
<td>1</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>F0</td>
<td>720</td>
<td>BX→AR</td>
</tr>
<tr>
<td>720</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>8A</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>04</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>12</td>
<td>001</td>
<td>RAM→I/O</td>
</tr>
<tr>
<td>740</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>1</td>
<td>05</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>04</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>20</td>
<td>+1</td>
<td>RAM→BL</td>
</tr>
<tr>
<td>741</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>04</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>04</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>30</td>
<td>760</td>
<td>RAM→BH</td>
</tr>
<tr>
<td>760</td>
<td>1</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>C0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>1</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>39</td>
<td>1</td>
<td>1</td>
<td>1</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>F2</td>
<td>001</td>
<td>BX→PC</td>
</tr>
<tr>
<td>780</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>00</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>00</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>1</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>1A</td>
<td>001</td>
<td>开中断</td>
</tr>
<tr>
<td>7C0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>01</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>00</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>48</td>
<td>+1</td>
<td>IAQ清零</td>
</tr>
</tbody></table>
<p>;分段模型机程序</p>
<p>#LOAD “MXJ2.IS”     ;预调入指令系统/微程序</p>
<p>#SET RAM 0260h = 5500h  ;数据区0260H单元预置数据5500h</p>
<p>​    org  0</p>
<p>start:  in   r0, iol</p>
<p>​    add  r0, 0260h</p>
<p>​    sta  0261h, r0</p>
<p>​    out  ioh, 0261h</p>
<p>​    jmp  start</p>
<p>​    End</p>
<p> <strong>5．实验心得</strong></p>
<p>实验数据区0260H单元预置数据5500h，装载实验之后再将I/O端的低位数据置为44，执行微单步，程序计数器PC=0001，从程序去区读出2040，并将其赋予IR，继续执行微单步，此时执行add  r0, 0260h微指令，从I/O地址中读出低位数据44，将其付给CL，继续执行微单步，PC自增，程序微地址+600，来到add程序将ROM中的地址通过总线传输给BX，PC+1，BX读入0260H。此时继续执行微单步，通过BX将待读取的地址通过ALU送给AR,继续执行微单步，从数据区0260位置读取出数据，将55付给BX的第八位，继续执行微单步将CX中低八位数据44送给AX，ALU做加法运算，通过总线将数据送给CX的第八位，此时数据为99H，接着执行数次微单步，将CX中的数据赋值给数据区0260的低八位，程序运行结束后，此时的数据为5599.</p>
<p>实验确实不难，跟着程序走一遍就很清楚，但是具体的工作原理就是在一步步的执行微单步过程中，理解分段模型机程序每一次微单步下的活动。</p>
<p><strong>实验七  带移位运算的****模型机的设计与实现</strong></p>
<p><strong>1．实验目的</strong></p>
<p>（1） 编制模型机移位运算控制逻辑的CM存储项。</p>
<p>（2） 熟悉和掌握存储逻辑控制器的调试方法与步骤。</p>
<p><strong>2．实验设备</strong></p>
<p>Dais-CMX16+计算机组成原理教学实验系统一台；</p>
<p>计算机一台。</p>
<p><strong>3．实验****原理</strong></p>
<p>本实验在实验二（分段模型机）的基础上扩充移位控制指令，实现移位控制运算。</p>
<p>实验中新增4条移位运算指令：RL（左环移）、RLC（带进位左环移）、RR（右环移）、RRC（带进位右环移），其指令格式如下：</p>
<table>
<thead>
<tr>
<th><em><strong>*助记符*</strong></em></th>
<th><em><strong>*机器指令码*</strong></em></th>
<th><em><strong>*说明*</strong></em></th>
</tr>
</thead>
<tbody><tr>
<td><em><strong>*RR R0*</strong></em></td>
<td><em><strong>*01010000*</strong></em></td>
<td><em><strong>*R0寄存器内容右移*</strong></em></td>
</tr>
<tr>
<td><em><strong>*RRC R0*</strong></em></td>
<td><em><strong>*01110000*</strong></em></td>
<td><em><strong>*R0寄存器内容带进位右移*</strong></em></td>
</tr>
<tr>
<td><em><strong>*RL R0*</strong></em></td>
<td><em><strong>*00010000*</strong></em></td>
<td><em><strong>*R0寄存器内容左移*</strong></em></td>
</tr>
<tr>
<td><em><strong>*RLC IOH*</strong></em></td>
<td><em><strong>*00110000*</strong></em></td>
<td><em><strong>*R0寄存器内容带进位左移*</strong></em></td>
</tr>
</tbody></table>
<p><img src="file:///C:\Users\888888\AppData\Local\Temp\ksohtml\wpsA0AC.tmp.jpg" alt="img"> </p>
<p>分段模型机数据通路</p>
<p><strong>4.</strong> <strong>实验****方法</strong></p>
<p>;移位模型机程序</p>
<p>#LOAD “MXJ3.IS”  ;预调入指令系统/微程序</p>
<p>org  0</p>
<p>start:  in   r0, iol</p>
<p>add  r0, 00h</p>
<p>rrc  r0</p>
<p>rl   r0</p>
<p>sta  01h, r0</p>
<p>out  ioh, 01h</p>
<p>jmp  start</p>
<p>end</p>
<p><strong>5．实验心得</strong> </p>
<table>
<thead>
<tr>
<th>微址00002)1)</th>
<th>M23</th>
<th>M22</th>
<th>M21</th>
<th>M20</th>
<th>M19</th>
<th>M18</th>
<th>M17</th>
<th>M16</th>
<th>代码</th>
<th>M15</th>
<th>M14</th>
<th>M13</th>
<th>M12</th>
<th>M11</th>
<th>M10</th>
<th>M9</th>
<th>M8</th>
<th>代码</th>
<th>M7</th>
<th>M6</th>
<th>M5</th>
<th>M4</th>
<th>M3</th>
<th>M2</th>
<th>M1</th>
<th>M0</th>
<th>代码</th>
<th>后续微址</th>
<th>说明</th>
</tr>
</thead>
<tbody><tr>
<td>E/M</td>
<td>IP</td>
<td>MWR</td>
<td>R/M</td>
<td>o2</td>
<td>o1</td>
<td>o0</td>
<td>OP</td>
<td>M</td>
<td>CN</td>
<td>S2</td>
<td>S2</td>
<td>S0</td>
<td>X2</td>
<td>X1</td>
<td>X0</td>
<td>XP</td>
<td>W</td>
<td>ALU</td>
<td>Iu</td>
<td>IE</td>
<td>IR</td>
<td>Icz</td>
<td>Ids</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td>000</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>00</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>00</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>00</td>
<td>+1</td>
<td>空操作</td>
</tr>
<tr>
<td>001</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>1</td>
<td>43</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>04</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>1</td>
<td>05</td>
<td>可变</td>
<td>IBUS→IR</td>
</tr>
<tr>
<td>600</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>00</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>00</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>12</td>
<td>001</td>
<td>空操作</td>
</tr>
<tr>
<td>620</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>1</td>
<td>1</td>
<td>07</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>1</td>
<td>0</td>
<td>06</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>20</td>
<td>+1</td>
<td>R0→AL</td>
</tr>
<tr>
<td>621</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>1</td>
<td>1</td>
<td>0</td>
<td>0E</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>89</td>
<td>1</td>
<td>0</td>
<td>1</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>B2</td>
<td>001</td>
<td>RL A→R0</td>
</tr>
<tr>
<td>640</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>1</td>
<td>1</td>
<td>0</td>
<td>0E</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>1</td>
<td>03</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>92</td>
<td>001</td>
<td>I/O→R0</td>
</tr>
<tr>
<td>660</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>1</td>
<td>1</td>
<td>07</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>1</td>
<td>0</td>
<td>06</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>20</td>
<td>+1</td>
<td>R0→A</td>
</tr>
<tr>
<td>661</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>1</td>
<td>1</td>
<td>0</td>
<td>0E</td>
<td>1</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>A9</td>
<td>1</td>
<td>0</td>
<td>1</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>B2</td>
<td>001</td>
<td>RL A→R0</td>
</tr>
<tr>
<td>680</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>1</td>
<td>05</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>04</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>20</td>
<td>+1</td>
<td>ROM→BL</td>
</tr>
<tr>
<td>681</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>1</td>
<td>43</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>1</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>39</td>
<td>1</td>
<td>1</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>E0</td>
<td>+1</td>
<td>BX→AR,PC+1</td>
</tr>
<tr>
<td>682</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>1</td>
<td>85</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>04</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>20</td>
<td>+1</td>
<td>RAM→BL</td>
</tr>
<tr>
<td>683</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>1</td>
<td>1</td>
<td>07</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>1</td>
<td>0</td>
<td>06</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>20</td>
<td>+1</td>
<td>R0→AL</td>
</tr>
<tr>
<td>684</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>1</td>
<td>1</td>
<td>0</td>
<td>0E</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>99</td>
<td>1</td>
<td>0</td>
<td>1</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>B2</td>
<td>001</td>
<td>A+B→R0</td>
</tr>
<tr>
<td>6A0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>1</td>
<td>1</td>
<td>07</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>1</td>
<td>0</td>
<td>06</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>20</td>
<td>+1</td>
<td>R0→A</td>
</tr>
<tr>
<td>6A1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>1</td>
<td>1</td>
<td>0</td>
<td>0E</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>81</td>
<td>1</td>
<td>0</td>
<td>1</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>B2</td>
<td>001</td>
<td>RR A→R0</td>
</tr>
<tr>
<td>6C0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>1</td>
<td>05</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>04</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>20</td>
<td>+1</td>
<td>ROM→BL</td>
</tr>
<tr>
<td>6C1</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>1</td>
<td>43</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>1</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>39</td>
<td>1</td>
<td>1</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>E0</td>
<td>+1</td>
<td>BX→AR,PC+1</td>
</tr>
<tr>
<td>6C2</td>
<td>1</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>A0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>1</td>
<td>0</td>
<td>06</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>12</td>
<td>001</td>
<td>R0→RAM</td>
</tr>
<tr>
<td>6E0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>1</td>
<td>1</td>
<td>07</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>1</td>
<td>0</td>
<td>06</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>20</td>
<td>+1</td>
<td>R0→A</td>
</tr>
<tr>
<td>6E1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>1</td>
<td>1</td>
<td>0</td>
<td>0E</td>
<td>1</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>A1</td>
<td>1</td>
<td>0</td>
<td>1</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>B2</td>
<td>001</td>
<td>RR A→R0</td>
</tr>
<tr>
<td>700</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>1</td>
<td>05</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>04</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>20</td>
<td>+1</td>
<td>ROM→BL</td>
</tr>
<tr>
<td>701</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>1</td>
<td>43</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>1</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>39</td>
<td>1</td>
<td>1</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>E0</td>
<td>+1</td>
<td>BX→AR,PC+1</td>
</tr>
<tr>
<td>702</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>8A</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>04</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>12</td>
<td>001</td>
<td>RAM→I/O</td>
</tr>
<tr>
<td>720</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>00</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>40</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>12</td>
<td>001</td>
<td>CY置1</td>
</tr>
<tr>
<td>740</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>1</td>
<td>05</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>04</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>20</td>
<td>+1</td>
<td>ROM→BL</td>
</tr>
<tr>
<td>741</td>
<td>1</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>C0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>1</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>39</td>
<td>1</td>
<td>1</td>
<td>1</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>F2</td>
<td>001</td>
<td>BX→PC</td>
</tr>
<tr>
<td>760</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>00</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>40</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>0</td>
<td>52</td>
<td>001</td>
<td>BX→PC</td>
</tr>
</tbody></table>
<p><strong>实验八  中断****模型机的设计与实现</strong></p>
<p><strong>1．实验目的</strong></p>
<p>了解“中断源”的硬件构造，掌握中断源微控制流程，设计和实现中断源在模型机中的运用。</p>
<p><strong>2．实验设备</strong></p>
<p>Dais-CMX16+计算机组成原理教学实验系统一台；</p>
<p>计算机一台。</p>
<p><strong>3．指令系统</strong></p>
<table>
<thead>
<tr>
<th><em><strong>*助记符*</strong></em></th>
<th><em><strong>*机器指令码*</strong></em></th>
<th><em><strong>*说明*</strong></em></th>
</tr>
</thead>
<tbody><tr>
<td><em><strong>*IN R0,IOL*</strong></em></td>
<td><em><strong>*00100000*</strong></em></td>
<td><em><strong>*I/O(数据开关)偶字节→R0*</strong></em></td>
</tr>
<tr>
<td><em><strong>*ADD R0,[addr]*</strong></em></td>
<td><em><strong>*01010000 XXXXXXXX XXXXXXXX*</strong></em></td>
<td><em><strong>*R0+[addr]→R0*</strong></em></td>
</tr>
<tr>
<td><em><strong>*STA [addr],R0*</strong></em></td>
<td><em><strong>*01110000 XXXXXXXX XXXXXXXX*</strong></em></td>
<td><em><strong>*R0→[addr]*</strong></em></td>
</tr>
<tr>
<td><em><strong>*OUT [addr],IOH*</strong></em></td>
<td><em><strong>*10010000 XXXXXXXX XXXXXXXX*</strong></em></td>
<td><em><strong>*[addr]→I/O奇字节*</strong></em></td>
</tr>
<tr>
<td><em><strong>*JMP addr*</strong></em></td>
<td><em><strong>*10110000 XXXXXXXX XXXXXXXX*</strong></em></td>
<td><em><strong>*addr→PC*</strong></em></td>
</tr>
</tbody></table>
<p><strong>程序清单</strong></p>
<table>
<thead>
<tr>
<th><em><strong>*地址*</strong></em></th>
<th><em><strong>*指令代码*</strong></em></th>
<th><em><strong>*助记符*</strong></em></th>
<th><em><strong>*功能*</strong></em></th>
</tr>
</thead>
<tbody><tr>
<td><em><strong>*000*</strong></em></td>
<td><em><strong>*c0*</strong></em></td>
<td><em><strong>*setb ea*</strong></em></td>
<td><em><strong>*开中断*</strong></em></td>
</tr>
<tr>
<td><em><strong>*001*</strong></em></td>
<td><em><strong>*20*</strong></em></td>
<td><em><strong>*in r0,ioL*</strong></em></td>
<td><em><strong>*i/o（数据开关）偶字节→r0*</strong></em></td>
</tr>
<tr>
<td><em><strong>*002*</strong></em></td>
<td><em><strong>*50 60 02*</strong></em></td>
<td><em><strong>*add r0,[addr]*</strong></em></td>
<td><em><strong>*r0+（addr）→R0*</strong></em></td>
</tr>
<tr>
<td><em><strong>*005*</strong></em></td>
<td><em><strong>*70 61 02*</strong></em></td>
<td><em><strong>*sta [addr],r0*</strong></em></td>
<td><em><strong>*R0→(addr)*</strong></em></td>
</tr>
<tr>
<td><em><strong>*008*</strong></em></td>
<td><em><strong>*90 61 02*</strong></em></td>
<td><em><strong>*out [addr],ioH*</strong></em></td>
<td><em><strong>*[addr]→i/o(奇字节)*</strong></em></td>
</tr>
<tr>
<td><em><strong>*00B*</strong></em></td>
<td><em><strong>*b0 01 00*</strong></em></td>
<td><em><strong>*jmp 001h*</strong></em></td>
<td><em><strong>*[addr]→pc*</strong></em></td>
</tr>
<tr>
<td><em><strong>*……*</strong></em></td>
<td><em><strong>*……*</strong></em></td>
<td><em><strong>*……*</strong></em></td>
<td><em><strong>*……*</strong></em></td>
</tr>
<tr>
<td><em><strong>*010*</strong></em></td>
<td><em><strong>*20*</strong></em></td>
<td><em><strong>*stb r0,ioL*</strong></em></td>
<td><em><strong>*i/o（数据开关）偶字节→r0*</strong></em></td>
</tr>
<tr>
<td><em><strong>*011*</strong></em></td>
<td><em><strong>*70 60 02*</strong></em></td>
<td><em><strong>*sta [addr],r0*</strong></em></td>
<td><em><strong>*r1→(addr)*</strong></em></td>
</tr>
<tr>
<td><em><strong>*014*</strong></em></td>
<td><em><strong>*e0*</strong></em></td>
<td><em><strong>*ret*</strong></em></td>
<td><em><strong>*[sp]→pc,sp+2*</strong></em></td>
</tr>
</tbody></table>
<p><strong>4.</strong> <strong>实验原理</strong></p>
<p>本实验的机器指令格式在分段模型机（高三位）的基础上增加流水识别位（第四位），该位为“0”时定义非流水指令，该位为“1”时表示需要寻址流水子过程。</p>
<p>在流水模型机的基础上，增加与中断有关的3条指令</p>
<table>
<thead>
<tr>
<th><em><strong>*助记符*</strong></em></th>
<th><em><strong>*机器指令码*</strong></em></th>
<th><em><strong>*说明*</strong></em></th>
</tr>
</thead>
<tbody><tr>
<td><em><strong>*SETB EA*</strong></em></td>
<td><em><strong>*11000000*</strong></em></td>
<td><em><strong>*中断允许*</strong></em></td>
</tr>
<tr>
<td><em><strong>*CLR EA*</strong></em></td>
<td><em><strong>*00000000*</strong></em></td>
<td><em><strong>*中断禁止*</strong></em></td>
</tr>
<tr>
<td><em><strong>*RET*</strong></em></td>
<td><em><strong>*11100000*</strong></em></td>
<td><em><strong>*返回或从中断返回*</strong></em></td>
</tr>
</tbody></table>
<p>与中断有关的为控制格式</p>
<p>中断允许控制IEQ</p>
<table>
<thead>
<tr>
<th>M7</th>
<th>M6</th>
<th>M3</th>
<th>M0</th>
<th>节拍</th>
<th></th>
<th></th>
</tr>
</thead>
<tbody><tr>
<td>Op</td>
<td>W</td>
<td>Ie</td>
<td>Ids</td>
<td>T4</td>
<td></td>
<td></td>
</tr>
<tr>
<td>1</td>
<td>1</td>
<td>0</td>
<td>1</td>
<td>↑</td>
<td>1→IEQ</td>
<td>开中断</td>
</tr>
<tr>
<td>1</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>↑</td>
<td>0→IEQ</td>
<td>关中断</td>
</tr>
</tbody></table>
<p>中断响应控制IAQ</p>
<table>
<thead>
<tr>
<th>M7</th>
<th>M6</th>
<th>M3</th>
<th>M0</th>
<th>节拍</th>
<th></th>
<th></th>
</tr>
</thead>
<tbody><tr>
<td>Op</td>
<td>W</td>
<td>Ie</td>
<td>Ids</td>
<td>T4</td>
<td></td>
<td></td>
</tr>
<tr>
<td>0</td>
<td>1</td>
<td>0</td>
<td>1</td>
<td>↑</td>
<td>1→IAQ</td>
<td>中断响应</td>
</tr>
<tr>
<td>0</td>
<td>0</td>
<td>0</td>
<td>1</td>
<td>↑</td>
<td>0→IAQ</td>
<td>中断退出</td>
</tr>
</tbody></table>
<p>中断请求控制INQ</p>
<table>
<thead>
<tr>
<th>IEQ</th>
<th>IAQ</th>
<th>INT</th>
<th>T4</th>
<th></th>
<th></th>
</tr>
</thead>
<tbody><tr>
<td>1</td>
<td>0</td>
<td>0</td>
<td>↑</td>
<td>1→INQ</td>
<td>锁存请求</td>
</tr>
<tr>
<td>X</td>
<td>1</td>
<td>X</td>
<td>↑</td>
<td>0→IAQ</td>
<td>清除请求</td>
</tr>
</tbody></table>
<p><img src="file:///C:\Users\888888\AppData\Local\Temp\ksohtml\wpsA0E1.tmp.jpg" alt="img"> </p>
<p><strong>(<strong><strong>中断电源原理图</strong></strong>)</strong></p>
<p><img src="file:///C:\Users\888888\AppData\Local\Temp\ksohtml\wpsA0E2.tmp.jpg" alt="img"></p>
<table>
<thead>
<tr>
<th></th>
<th></th>
</tr>
</thead>
<tbody><tr>
<td></td>
<td><img src="file:///C:\Users\888888\AppData\Local\Temp\ksohtml\wpsA0E3.tmp.png" alt="img"></td>
</tr>
</tbody></table>
<p><strong>5</strong><strong>. 实验步骤</strong></p>
<p>打开CMStudio程序找道mxj8.asm装载</p>
<p>中断模型机源程序:</p>
<p>#LOAD “MXJ5.IS”     ;预调入指令系统/微程序</p>
<p>#SET RAM 0260h = 5500h  ;数据区0260H单元预置数据5500h</p>
<p>​    org  0</p>
<p>start:  setb  ea     ;开中断</p>
<p>loop:  in   r0, iol</p>
<p>​    add  r0, 0260h</p>
<p>​    sta  0261h, r0</p>
<p>​    out  ioh, 0261h</p>
<p>​    jmp  loop</p>
<p>​    org  10h    ;中断服务程序</p>
<p>​    in   r0, iol</p>
<p>​    sta  0260h, r0</p>
<p>​    ret</p>
<p>​    end</p>
<p><strong>6．实验心得</strong></p>
<p>最后一次实验，实验内容为中断控制，到这里我们是以软件模拟微程序进行实验，通过这个实验对中断控制的了解更加深入。</p>

                
            </div>
            <hr/>

            

    <div class="reprint" id="reprint-statement">
        
            <div class="reprint__author">
                <span class="reprint-meta" style="font-weight: bold;">
                    <i class="fas fa-user">
                        文章作者:
                    </i>
                </span>
                <span class="reprint-info">
                    <a href="/shier_jinghuang/about" rel="external nofollow noreferrer">十二惊惶</a>
                </span>
            </div>
            <div class="reprint__type">
                <span class="reprint-meta" style="font-weight: bold;">
                    <i class="fas fa-link">
                        文章链接:
                    </i>
                </span>
                <span class="reprint-info">
                    <a href="https://im-so-scared-2.gitee.io/shier_jinghuang/shier_jinghuang/2022/01/30/%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%BB%84%E6%88%90%E5%8E%9F%E7%90%86/">https://im-so-scared-2.gitee.io/shier_jinghuang/shier_jinghuang/2022/01/30/%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%BB%84%E6%88%90%E5%8E%9F%E7%90%86/</a>
                </span>
            </div>
            <div class="reprint__notice">
                <span class="reprint-meta" style="font-weight: bold;">
                    <i class="fas fa-copyright">
                        版权声明:
                    </i>
                </span>
                <span class="reprint-info">
                    本博客所有文章除特別声明外，均采用
                    <a href="https://creativecommons.org/licenses/by/4.0/deed.zh" rel="external nofollow noreferrer" target="_blank">CC BY 4.0</a>
                    许可协议。转载请注明来源
                    <a href="/shier_jinghuang/about" target="_blank">十二惊惶</a>
                    !
                </span>
            </div>
        
    </div>

    <script async defer>
      document.addEventListener("copy", function (e) {
        let toastHTML = '<span>复制成功，请遵循本文的转载规则</span><button class="btn-flat toast-action" onclick="navToReprintStatement()" style="font-size: smaller">查看</a>';
        M.toast({html: toastHTML})
      });

      function navToReprintStatement() {
        $("html, body").animate({scrollTop: $("#reprint-statement").offset().top - 80}, 800);
      }
    </script>



            <div class="tag_share" style="display: block;">
                <div class="post-meta__tag-list" style="display: inline-block;">
                    
                        <div class="article-tag">
                            
                                <a href="/shier_jinghuang/tags/%E5%AD%A6%E4%B9%A0%E8%AE%B0%E5%BD%95/">
                                    <span class="chip bg-color">学习记录</span>
                                </a>
                            
                        </div>
                    
                </div>
                <div class="post_share" style="zoom: 80%; width: fit-content; display: inline-block; float: right; margin: -0.15rem 0;">
                    <link rel="stylesheet" type="text/css" href="/shier_jinghuang/libs/share/css/share.min.css">
<div id="article-share">

    
    <div class="social-share" data-sites="twitter,facebook,google,qq,qzone,wechat,weibo,douban,linkedin" data-wechat-qrcode-helper="<p>微信扫一扫即可分享！</p>"></div>
    <script src="/shier_jinghuang/libs/share/js/social-share.min.js"></script>
    

    

</div>

                </div>
            </div>
            
        </div>
    </div>

    

    

    

    

    

    

    

    

    

<article id="prenext-posts" class="prev-next articles">
    <div class="row article-row">
        
        <div class="article col s12 m6" data-aos="fade-up">
            <div class="article-badge left-badge text-color">
                <i class="fas fa-chevron-left"></i>&nbsp;上一篇</div>
            <div class="card">
                <a href="/shier_jinghuang/2022/02/20/%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%BD%91%E7%BB%9C%E5%AE%89%E5%85%A8%E6%80%9D%E8%80%83%E9%A2%98/">
                    <div class="card-image">
                        
                        
                        <img src="/shier_jinghuang/medias/featureimages/4.jpg" class="responsive-img" alt="计算机网络安全思考题">
                        
                        <span class="card-title">计算机网络安全思考题</span>
                    </div>
                </a>
                <div class="card-content article-content">
                    <div class="summary block-with-text">
                        
                            
                        
                    </div>
                    <div class="publish-info">
                        <span class="publish-date">
                            <i class="far fa-clock fa-fw icon-date"></i>2022-02-20
                        </span>
                        <span class="publish-author">
                            
                            <i class="fas fa-bookmark fa-fw icon-category"></i>
                            
                            <a href="/shier_jinghuang/categories/%E7%BD%91%E7%BB%9C%E5%AE%89%E5%85%A8/" class="post-category">
                                    网络安全
                                </a>
                            
                            
                        </span>
                    </div>
                </div>
                
                <div class="card-action article-tags">
                    
                    <a href="/shier_jinghuang/tags/%E7%BD%91%E7%BB%9C%E5%AE%89%E5%85%A8/">
                        <span class="chip bg-color">网络安全</span>
                    </a>
                    
                </div>
                
            </div>
        </div>
        
        
        <div class="article col s12 m6" data-aos="fade-up">
            <div class="article-badge right-badge text-color">
                下一篇&nbsp;<i class="fas fa-chevron-right"></i>
            </div>
            <div class="card">
                <a href="/shier_jinghuang/2022/01/23/buuCTF%E4%B9%8Bweb%E9%A2%98%E7%9B%AEwp/">
                    <div class="card-image">
                        
                        
                        <img src="/shier_jinghuang/medias/featureimages/11.jpg" class="responsive-img" alt="buuCTF之web题目wp">
                        
                        <span class="card-title">buuCTF之web题目wp</span>
                    </div>
                </a>
                <div class="card-content article-content">
                    <div class="summary block-with-text">
                        
                            
                        
                    </div>
                    <div class="publish-info">
                            <span class="publish-date">
                                <i class="far fa-clock fa-fw icon-date"></i>2022-01-23
                            </span>
                        <span class="publish-author">
                            
                            <i class="fas fa-bookmark fa-fw icon-category"></i>
                            
                            <a href="/shier_jinghuang/categories/CTF/" class="post-category">
                                    CTF
                                </a>
                            
                            
                        </span>
                    </div>
                </div>
                
                <div class="card-action article-tags">
                    
                    <a href="/shier_jinghuang/tags/Web/">
                        <span class="chip bg-color">Web</span>
                    </a>
                    
                    <a href="/shier_jinghuang/tags/Buuctf/">
                        <span class="chip bg-color">Buuctf</span>
                    </a>
                    
                </div>
                
            </div>
        </div>
        
    </div>
</article>

</div>



<!-- 代码块功能依赖 -->
<script type="text/javascript" src="/shier_jinghuang/libs/codeBlock/codeBlockFuction.js"></script>


  <!-- 是否加载使用自带的 prismjs. -->
  <script type="text/javascript" src="/shier_jinghuang/libs/prism/prism.min.js"></script>


<!-- 代码语言 -->

<script type="text/javascript" src="/shier_jinghuang/libs/codeBlock/codeLang.js"></script>


<!-- 代码块复制 -->

<script type="text/javascript" src="/shier_jinghuang/libs/codeBlock/codeCopy.js"></script>


<!-- 代码块收缩 -->

<script type="text/javascript" src="/shier_jinghuang/libs/codeBlock/codeShrink.js"></script>



    </div>
    <div id="toc-aside" class="expanded col l3 hide-on-med-and-down">
        <div class="toc-widget card" style="background-color: white;">
            <div class="toc-title"><i class="far fa-list-alt"></i>&nbsp;&nbsp;目录</div>
            <div id="toc-content"></div>
        </div>
    </div>
</div>

<!-- TOC 悬浮按钮. -->

<div id="floating-toc-btn" class="hide-on-med-and-down">
    <a class="btn-floating btn-large bg-color">
        <i class="fas fa-list-ul"></i>
    </a>
</div>


<script src="/shier_jinghuang/libs/tocbot/tocbot.min.js"></script>
<script>
    $(function () {
        tocbot.init({
            tocSelector: '#toc-content',
            contentSelector: '#articleContent',
            headingsOffset: -($(window).height() * 0.4 - 45),
            collapseDepth: Number('0'),
            headingSelector: 'h2, h3, h4'
        });

        // Set scroll toc fixed.
        let tocHeight = parseInt($(window).height() * 0.4 - 64);
        let $tocWidget = $('.toc-widget');
        $(window).scroll(function () {
            let scroll = $(window).scrollTop();
            /* add post toc fixed. */
            if (scroll > tocHeight) {
                $tocWidget.addClass('toc-fixed');
            } else {
                $tocWidget.removeClass('toc-fixed');
            }
        });

        
        /* 修复文章卡片 div 的宽度. */
        let fixPostCardWidth = function (srcId, targetId) {
            let srcDiv = $('#' + srcId);
            if (srcDiv.length === 0) {
                return;
            }

            let w = srcDiv.width();
            if (w >= 450) {
                w = w + 21;
            } else if (w >= 350 && w < 450) {
                w = w + 18;
            } else if (w >= 300 && w < 350) {
                w = w + 16;
            } else {
                w = w + 14;
            }
            $('#' + targetId).width(w);
        };

        // 切换TOC目录展开收缩的相关操作.
        const expandedClass = 'expanded';
        let $tocAside = $('#toc-aside');
        let $mainContent = $('#main-content');
        $('#floating-toc-btn .btn-floating').click(function () {
            if ($tocAside.hasClass(expandedClass)) {
                $tocAside.removeClass(expandedClass).hide();
                $mainContent.removeClass('l9');
            } else {
                $tocAside.addClass(expandedClass).show();
                $mainContent.addClass('l9');
            }
            fixPostCardWidth('artDetail', 'prenext-posts');
        });
        
    });
</script>

    

</main>




    <footer class="page-footer bg-color">
    
        <link rel="stylesheet" href="/shier_jinghuang/libs/aplayer/APlayer.min.css">
<style>
    .aplayer .aplayer-lrc p {
        
        display: none;
        
        font-size: 12px;
        font-weight: 700;
        line-height: 16px !important;
    }

    .aplayer .aplayer-lrc p.aplayer-lrc-current {
        
        display: none;
        
        font-size: 15px;
        color: #42b983;
    }

    
    .aplayer.aplayer-fixed.aplayer-narrow .aplayer-body {
        left: -66px !important;
    }

    .aplayer.aplayer-fixed.aplayer-narrow .aplayer-body:hover {
        left: 0px !important;
    }

    
</style>
<div class="">
    
    <div class="row">
        <meting-js class="col l8 offset-l2 m10 offset-m1 s12"
                   server="netease"
                   type="playlist"
                   id="503838841"
                   fixed='true'
                   autoplay='false'
                   theme='#42b983'
                   loop='all'
                   order='random'
                   preload='auto'
                   volume='0.7'
                   list-folded='true'
        >
        </meting-js>
    </div>
</div>

<script src="/shier_jinghuang/libs/aplayer/APlayer.min.js"></script>
<script src="/shier_jinghuang/libs/aplayer/Meting.min.js"></script>

    

    <div class="container row center-align"
         style="margin-bottom: 0px !important;">
        <div class="col s12 m8 l8 copy-right">
            Copyright&nbsp;&copy;
            
                <span id="year">2019-2023</span>
            
            <a href="/shier_jinghuang/about" target="_blank">十二惊惶</a>
            |&nbsp;Powered by&nbsp;<a href="https://hexo.io/" target="_blank">Hexo</a>
            |&nbsp;Theme&nbsp;<a href="https://github.com/blinkfox/hexo-theme-matery" target="_blank">Matery</a>
            <br>
            
                &nbsp;<i class="fas fa-chart-area"></i>&nbsp;站点总字数:&nbsp;<span
                        class="white-color">289.6k</span>
            
            
            
                
            
            
                <span id="busuanzi_container_site_pv">
                &nbsp;|&nbsp;<i class="far fa-eye"></i>&nbsp;总访问量:&nbsp;
                    <span id="busuanzi_value_site_pv" class="white-color"></span>
            </span>
            
            
                <span id="busuanzi_container_site_uv">
                &nbsp;|&nbsp;<i class="fas fa-users"></i>&nbsp;总访问人数:&nbsp;
                    <span id="busuanzi_value_site_uv" class="white-color"></span>
            </span>
            
            <br>

            <!-- 运行天数提醒. -->
            
            <br>
            
        </div>
        <div class="col s12 m4 l4 social-link social-statis">
    <a href="https://github.com/blinkfox" class="tooltipped" target="_blank" data-tooltip="访问我的GitHub" data-position="top" data-delay="50">
        <i class="fab fa-github"></i>
    </a>



    <a href="mailto:1181062873@qq.com" class="tooltipped" target="_blank" data-tooltip="邮件联系我" data-position="top" data-delay="50">
        <i class="fas fa-envelope-open"></i>
    </a>







    <a href="tencent://AddContact/?fromId=50&fromSubId=1&subcmd=all&uin=1181062873" class="tooltipped" target="_blank" data-tooltip="QQ联系我: 1181062873" data-position="top" data-delay="50">
        <i class="fab fa-qq"></i>
    </a>







    <a href="/shier_jinghuang/atom.xml" class="tooltipped" target="_blank" data-tooltip="RSS 订阅" data-position="top" data-delay="50">
        <i class="fas fa-rss"></i>
    </a>

</div>
    </div>
</footer>

<div class="progress-bar"></div>


    <!-- 搜索遮罩框 -->
<div id="searchModal" class="modal">
    <div class="modal-content">
        <div class="search-header">
            <span class="title"><i class="fas fa-search"></i>&nbsp;&nbsp;搜索</span>
            <input type="search" id="searchInput" name="s" placeholder="请输入搜索的关键字"
                   class="search-input">
        </div>
        <div id="searchResult"></div>
    </div>
</div>

<script type="text/javascript">
$(function () {
    var searchFunc = function (path, search_id, content_id) {
        'use strict';
        $.ajax({
            url: path,
            dataType: "xml",
            success: function (xmlResponse) {
                // get the contents from search data
                var datas = $("entry", xmlResponse).map(function () {
                    return {
                        title: $("title", this).text(),
                        content: $("content", this).text(),
                        url: $("url", this).text()
                    };
                }).get();
                var $input = document.getElementById(search_id);
                var $resultContent = document.getElementById(content_id);
                $input.addEventListener('input', function () {
                    var str = '<ul class=\"search-result-list\">';
                    var keywords = this.value.trim().toLowerCase().split(/[\s\-]+/);
                    $resultContent.innerHTML = "";
                    if (this.value.trim().length <= 0) {
                        return;
                    }
                    // perform local searching
                    datas.forEach(function (data) {
                        var isMatch = true;
                        var data_title = data.title.trim().toLowerCase();
                        var data_content = data.content.trim().replace(/<[^>]+>/g, "").toLowerCase();
                        var data_url = data.url;
                        data_url = data_url.indexOf('/') === 0 ? data.url : '/' + data_url;
                        var index_title = -1;
                        var index_content = -1;
                        var first_occur = -1;
                        // only match artiles with not empty titles and contents
                        if (data_title !== '' && data_content !== '') {
                            keywords.forEach(function (keyword, i) {
                                index_title = data_title.indexOf(keyword);
                                index_content = data_content.indexOf(keyword);
                                if (index_title < 0 && index_content < 0) {
                                    isMatch = false;
                                } else {
                                    if (index_content < 0) {
                                        index_content = 0;
                                    }
                                    if (i === 0) {
                                        first_occur = index_content;
                                    }
                                }
                            });
                        }
                        // show search results
                        if (isMatch) {
                            str += "<li><a href='" + data_url + "' class='search-result-title'>" + data_title + "</a>";
                            var content = data.content.trim().replace(/<[^>]+>/g, "");
                            if (first_occur >= 0) {
                                // cut out 100 characters
                                var start = first_occur - 20;
                                var end = first_occur + 80;
                                if (start < 0) {
                                    start = 0;
                                }
                                if (start === 0) {
                                    end = 100;
                                }
                                if (end > content.length) {
                                    end = content.length;
                                }
                                var match_content = content.substr(start, end);
                                // highlight all keywords
                                keywords.forEach(function (keyword) {
                                    var regS = new RegExp(keyword, "gi");
                                    match_content = match_content.replace(regS, "<em class=\"search-keyword\">" + keyword + "</em>");
                                });

                                str += "<p class=\"search-result\">" + match_content + "...</p>"
                            }
                            str += "</li>";
                        }
                    });
                    str += "</ul>";
                    $resultContent.innerHTML = str;
                });
            }
        });
    };

    searchFunc('/shier_jinghuang/search.xml', 'searchInput', 'searchResult');
});
</script>

    <!-- 白天和黑夜主题 -->
<div class="stars-con">
    <div id="stars"></div>
    <div id="stars2"></div>
    <div id="stars3"></div>  
</div>

<script>
    function switchNightMode() {
        $('<div class="Cuteen_DarkSky"><div class="Cuteen_DarkPlanet"></div></div>').appendTo($('body')),
        setTimeout(function () {
            $('body').hasClass('DarkMode') 
            ? ($('body').removeClass('DarkMode'), localStorage.setItem('isDark', '0'), $('#sum-moon-icon').removeClass("fa-sun").addClass('fa-moon')) 
            : ($('body').addClass('DarkMode'), localStorage.setItem('isDark', '1'), $('#sum-moon-icon').addClass("fa-sun").removeClass('fa-moon')),
            
            setTimeout(function () {
            $('.Cuteen_DarkSky').fadeOut(1e3, function () {
                $(this).remove()
            })
            }, 2e3)
        })
    }
</script>

    <!-- 回到顶部按钮 -->
<div id="backTop" class="top-scroll">
    <a class="btn-floating btn-large waves-effect waves-light" href="#!">
        <i class="fas fa-arrow-up"></i>
    </a>
</div>


    <script src="/shier_jinghuang/libs/materialize/materialize.min.js"></script>
    <script src="/shier_jinghuang/libs/masonry/masonry.pkgd.min.js"></script>
    <script src="/shier_jinghuang/libs/aos/aos.js"></script>
    <script src="/shier_jinghuang/libs/scrollprogress/scrollProgress.min.js"></script>
    <script src="/shier_jinghuang/libs/lightGallery/js/lightgallery-all.min.js"></script>
    <script src="/shier_jinghuang/js/matery.js"></script>

    

    

    <!-- 雪花特效 -->
    

    <!-- 鼠标星星特效 -->
    

     
        <script src="https://ssl.captcha.qq.com/TCaptcha.js"></script>
        <script src="/shier_jinghuang/libs/others/TencentCaptcha.js"></script>
        <button id="TencentCaptcha" data-appid="xxxxxxxxxx" data-cbfn="callback" type="button" hidden></button>
    

    <!-- Baidu Analytics -->

    <!-- Baidu Push -->

<script>
    (function () {
        var bp = document.createElement('script');
        var curProtocol = window.location.protocol.split(':')[0];
        if (curProtocol === 'https') {
            bp.src = 'https://zz.bdstatic.com/linksubmit/push.js';
        } else {
            bp.src = 'http://push.zhanzhang.baidu.com/push.js';
        }
        var s = document.getElementsByTagName("script")[0];
        s.parentNode.insertBefore(bp, s);
    })();
</script>

    
    <script src="/shier_jinghuang/libs/others/clicklove.js" async="async"></script>
    
    
    <script async src="/shier_jinghuang/libs/others/busuanzi.pure.mini.js"></script>
    

    

    

    <!--腾讯兔小巢-->
    
    

    

    

    
    <script src="/shier_jinghuang/libs/instantpage/instantpage.js" type="module"></script>
    

</body>

</html>
